<?php

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */


require_once '../dao/Conexao.php';

/**
 * Description of entradaItemDAO
 *
 * @author Santos
 */
class entradaItemDAO {

    public function setDados(entradaItemModel $model) {
        $conexao = new Conexao();
        if ($this->getAcao($model) == "I") {
            $sql = "INSERT INTO 
                `entrada_item`
              (
                `PRODUTO_FK_PK`,
                `DATA_ENTRADA_FK_PK`,
                `DOCUMENTO_FK_PK`,
                `QUANTIDADE`,
                `PRECO_VENDA`,
                `PRECO_CUSTO`) 
              VALUE (
                " . $model->getProdutoModel()->getId() . ",
                '" . $model->getEntradaModel()->getDataEntrada() . "',
                " . $model->getEntradaModel()->getId() . ",
                " . $model->getQuantidade() . ",
                " . $model->getPrecoVenda() . ",
                " . $model->getPrecoCusto() . ")";
        } elseif ($this->getAcao($model) == "U") {
            $sql = "UPDATE 
                    `entrada_item`  
                  SET 
                    `QUANTIDADE` = " . $model->getQuantidade() . ",
                    `PRECO_VENDA` = " . $model->getPrecoVenda() . ",
                    `PRECO_CUSTO` = " . $model->getPrecoCusto() . " 
                  WHERE 
                    `DOCUMENTO_FK_PK` = " . $model->getEntradaModel()->getId() . " AND 
                    `DATA_ENTRADA_FK_PK` = '" . $model->getEntradaModel()->getDataEntrada() . "' AND 
                    `PRODUTO_FK_PK` = " . $model->getProdutoModel()->getId() . "";
        }
        $resultado = mysql_query($sql, $conexao->getConexao()) or die(mysql_error());

        if (!$resultado) {
            die('Erro na manipulação dos dados');
            return false;
        }
        $conexao->desconecta();
        return true;
    }

    public function getAcao(entradaItemModel $model) {
        $conexao = new Conexao();
        $sql = "SELECT * FROM `entrada_item` WHERE `DOCUMENTO_FK_PK` = " . $model->getEntradaModel()->getId() . " AND 
                    `DATA_ENTRADA_FK_PK` = '" . $model->getEntradaModel()->getDataEntrada() . "' AND 
                    `PRODUTO_FK_PK` = " . $model->getProdutoModel()->getId() . "";
        $resultado = mysql_query($sql, $conexao->getConexao()) or die(mysql_error());
        $numeroLinha = mysql_num_rows($resultado);
        if ($numeroLinha == 1) {
            return "U"; //update
        } else {
            return "I"; //insert
        }
        $conexao->desconecta
        ();
    }

    public function deleteDados(entradaItemModel $model) {
        $conexao = new Conexao();
        $sql = " DELETE FROM `entrada_item` WHERE `DOCUMENTO_FK_PK` = " . $model->getEntradaModel()->getId() . " AND 
                    `DATA_ENTRADA_FK_PK` = '" . $model->getEntradaModel()->getDataEntrada() . "'";
        $resultado = mysql_query($sql, $conexao->getConexao()) or die(mysql_error());
        if (!$resultado) {
            die('Erro na exclusão dos dados');
            return false;
        }
        $conexao->desconecta();
        return true;
    }

    public function getDados(entradaItemModel $model) {
        $conexao = new Conexao();
        $sql = "SELECT 
                `entradaItem`.`DOCUMENTO_FK_PK`,
                `entradaItem`.`DATA_ENTRADA_FK_PK`,
                `entradaItem`.`PRODUTO_FK_PK`,
                `produto`.`NOME`,
                `entradaItem`.`QUANTIDADE`,
                `entradaItem`.`PRECO_VENDA`,
                `entradaItem`.`PRECO_CUSTO`
                FROM 
                  `entrada_item` `entradaItem`
                INNER JOIN `entrada` `entrada` 
                ON `entradaItem`.`DATA_ENTRADA_FK_PK` = `entrada`.`DATA_ENTRADA_PK`
                and `entradaItem`.`DOCUMENTO_FK_PK` = `entrada`.`DOCUMENTO_PK`
                inner join `produto` produto
                on `entradaItem`.`PRODUTO_FK_PK` = `produto`.`ID_PK` ";
        if ($model->getEntradaModel()->getId() <> "" && $model->getEntradaModel()->getDataEntrada() <> "") {
            $sql = $sql . " where `entradaItem`.`DATA_ENTRADA_FK_PK` = '" . $model->getEntradaModel()->getDataEntrada() . "'          
                            and `entradaItem`.`DOCUMENTO_FK_PK` = " . $model->getEntradaModel()->getId() . "";
        }
        $resultado = mysql_query($sql, $conexao->getConexao()) or die(mysql_error());
        $conexao->desconecta();
        return $resultado;
    }

}
